package com.basics.api.vo;

import com.basics.api.response.organization.DefaultOrganizationInfoData;
import com.basics.framework.aspectj.lang.annotation.PrivacyEncrypt;
import com.basics.framework.aspectj.lang.enums.PrivacyTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;

@ApiModel("用户基本登录信息")
@Data
public class UserInfo implements Serializable {
    @ApiModelProperty("用户ID")
    private Long userId;

    @ApiModelProperty("手机号")
    @PrivacyEncrypt(type = PrivacyTypeEnum.PHONE)
    private String phone;

    @ApiModelProperty("openId")
    private String openId;

    @ApiModelProperty("昵称")
    private String nickName;

    @ApiModelProperty("头像")
    private String avatar;

    @ApiModelProperty("是否有默认组织")
    private Boolean hasOrganization=false;

    @ApiModelProperty(value = "实名")
    @PrivacyEncrypt(type = PrivacyTypeEnum.NAME)
    private String realname;

    @ApiModelProperty("默认分组信息")
    private DefaultOrganizationInfoData organizationInfo;
}
